A depth map typically comprises a two-dimensional image of an environment that includes depth information relating to the distances to objects within the environment from a particular reference point. The particular reference point may be associated with an image capture device. Each pixel in the two-dimensional image may be associated with a depth value representing a linear distance from the particular reference point. A variety of techniques may be used to generate a depth map such as structured light illumination and time of flight techniques.
Structured light illumination involves projecting a light pattern into an environment, capturing an image of the reflected light pattern, and then determining distance information from the spacings and/or distortions associated with the reflected light pattern relative to the projected light pattern. The light pattern may be projected using light that is invisible to the naked eye (e.g., IR or UV light) and may comprise a single dot, a single line, or a variety of dimensional patterns (e.g., horizontal and vertical lines, or checkerboard patterns). In some cases, several different light patterns may be necessary to generate accurate depth information.
Time of flight techniques may determine distances to objects within an environment by timing how long it takes for light transmitted from a light source to travel to the objects and reflect back to an image sensor. In some cases, a short light pulse (or series of light pulses) may be projected into the environment at a first point in time and reflections associated with the short light pulse may be captured at a second point in time after the first point in time. A time of flight system may adjust the time difference between the first point in time and the second point in time in order to detect objects at a particular distance (or over a range of distances) associated with the time difference.